home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / test / test_atexit.pyo (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  3KB  |  119 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyo (Python 2.4)
  3.  
  4. import sys
  5. import unittest
  6. import StringIO
  7. import atexit
  8. from test import test_support
  9.  
  10. class TestCase(unittest.TestCase):
  11.     
  12.     def test_args(self):
  13.         s = StringIO.StringIO()
  14.         sys.stdout = sys.stderr = s
  15.         save_handlers = atexit._exithandlers
  16.         atexit._exithandlers = []
  17.         
  18.         try:
  19.             atexit.register(self.h1)
  20.             atexit.register(self.h4)
  21.             atexit.register(self.h4, 4, kw = 'abc')
  22.             atexit._run_exitfuncs()
  23.         finally:
  24.             sys.stdout = sys.__stdout__
  25.             sys.stderr = sys.__stderr__
  26.             atexit._exithandlers = save_handlers
  27.  
  28.         self.assertEqual(s.getvalue(), "h4 (4,) {'kw': 'abc'}\nh4 () {}\nh1\n")
  29.  
  30.     
  31.     def test_order(self):
  32.         s = StringIO.StringIO()
  33.         sys.stdout = sys.stderr = s
  34.         save_handlers = atexit._exithandlers
  35.         atexit._exithandlers = []
  36.         
  37.         try:
  38.             atexit.register(self.h1)
  39.             atexit.register(self.h2)
  40.             atexit.register(self.h3)
  41.             atexit._run_exitfuncs()
  42.         finally:
  43.             sys.stdout = sys.__stdout__
  44.             sys.stderr = sys.__stderr__
  45.             atexit._exithandlers = save_handlers
  46.  
  47.         self.assertEqual(s.getvalue(), 'h3\nh2\nh1\n')
  48.  
  49.     
  50.     def test_sys_override(self):
  51.         s = StringIO.StringIO()
  52.         sys.stdout = sys.stderr = s
  53.         save_handlers = atexit._exithandlers
  54.         atexit._exithandlers = []
  55.         exfunc = sys.exitfunc
  56.         sys.exitfunc = self.h1
  57.         reload(atexit)
  58.         
  59.         try:
  60.             atexit.register(self.h2)
  61.             atexit._run_exitfuncs()
  62.         finally:
  63.             sys.stdout = sys.__stdout__
  64.             sys.stderr = sys.__stderr__
  65.             atexit._exithandlers = save_handlers
  66.             sys.exitfunc = exfunc
  67.  
  68.         self.assertEqual(s.getvalue(), 'h2\nh1\n')
  69.  
  70.     
  71.     def test_raise(self):
  72.         s = StringIO.StringIO()
  73.         sys.stdout = sys.stderr = s
  74.         save_handlers = atexit._exithandlers
  75.         atexit._exithandlers = []
  76.         
  77.         try:
  78.             atexit.register(self.raise1)
  79.             atexit.register(self.raise2)
  80.             self.assertRaises(TypeError, atexit._run_exitfuncs)
  81.         finally:
  82.             sys.stdout = sys.__stdout__
  83.             sys.stderr = sys.__stderr__
  84.             atexit._exithandlers = save_handlers
  85.  
  86.  
  87.     
  88.     def h1(self):
  89.         print 'h1'
  90.  
  91.     
  92.     def h2(self):
  93.         print 'h2'
  94.  
  95.     
  96.     def h3(self):
  97.         print 'h3'
  98.  
  99.     
  100.     def h4(self, *args, **kwargs):
  101.         print 'h4', args, kwargs
  102.  
  103.     
  104.     def raise1(self):
  105.         raise TypeError
  106.  
  107.     
  108.     def raise2(self):
  109.         raise SystemError
  110.  
  111.  
  112.  
  113. def test_main():
  114.     test_support.run_unittest(TestCase)
  115.  
  116. if __name__ == '__main__':
  117.     test_main()
  118.  
  119.